home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / program / tcqbsnip.zip / BINARY.BAS < prev    next >
BASIC Source File  |  1997-06-20  |  1KB  |  45 lines

  1. ' BINARY.BAS
  2. ' by Tika Carr & Allen Huffman
  3. ' October 25, 1996
  4. '
  5. ' Free for use as long as authors get credit for these two routines
  6. ' No warranties or guarantees are expressed or implied.
  7. '
  8. ' Purpose: Convert between binary and decimal values
  9.  
  10. DECLARE FUNCTION BIN2DEC! (binary$)
  11. DECLARE FUNCTION DEC2BIN$ (decimal!)
  12.  
  13. INPUT "Binary Value"; B$
  14. PRINT BIN2DEC!(B$)
  15.  
  16. INPUT "decimal value"; D!
  17. PRINT DEC2BIN$(D!)
  18.  
  19. FUNCTION BIN2DEC! (binary$)
  20. bit = 1: xbit = 0
  21. FOR i = LEN(binary$) TO 1 STEP -1
  22.     IF MID$(binary$, i, 1) = "1" THEN
  23.         xbit! = xbit! + bit
  24.     END IF
  25.     bit = bit * 2
  26. NEXT
  27. BIN2DEC! = xbit!
  28. END FUNCTION
  29.  
  30. FUNCTION DEC2BIN$ (decimal!)
  31. x! = decimal!: bit! = 1: BitCount = 1
  32. WHILE x! > 1: x! = x! \ 2: bit! = bit! * 2: BitCount = BitCount + 1: WEND
  33. WHILE LEN(xbit$) < BitCount
  34.     IF decimal! >= bit! THEN
  35.         xbit$ = xbit$ + "1"
  36.     ELSE
  37.         xbit$ = xbit$ + "0"
  38.     END IF
  39.     IF decimal! >= bit! THEN decimal! = decimal! - bit!
  40.     bit! = bit! - (bit! / 2)
  41. WEND
  42. DEC2BIN$ = xbit$
  43. END FUNCTION
  44.  
  45.